/*
 * @ProjectName: 综合安防
 * @Copyright:   2018 HangZhou Hikvision System Technology Co., Ltd. All Right Reserved.
 * @address:     http://www.hikvision.com
 * @date:        2018年01月29日 14:21
 * @description: 本内容仅限于杭州海康威视系统技术公有限司内部使用，禁止转发.
 */
package com.capsule.chapter.pattern;

import org.apache.commons.lang3.StringUtils;
import org.junit.Test;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

/**
 * <p>
 *      https://blog.csdn.net/crazy1235/article/details/50532754
 * </p>
 *
 * @author xiachaoyang
 * @version V1.0
 * @date 2018年08月27日 11:50
 * @modificationHistory=========================逻辑或功能性重大变更记录
 * @modify By: {修改人} 2018年08月27日
 * @modify reason: {方法名}:{原因}
 * ...
 */
public class PatternValidate {

    /**
     * 正则匹配
     *
     * @param pattern 正则表达式
     * @param content 待比较文本
     * @return
     */
    public static boolean regxMatcher(String pattern, String content) {
        if (StringUtils.isBlank(content) || StringUtils.isBlank(pattern)) {
            return false;
        }
        return Pattern.matches(pattern, content);
    }

    /**
     * 非法字符匹配 ([/\:?'<>|]+)
     * @param pattern
     * @param content
     * @return
     */
    public static boolean  regxFind(String pattern, String content){
        Pattern p = Pattern.compile(pattern);
        Matcher m = p.matcher(content);
        return m.find();
    }




    @Test
    public void validateIllegalParams(){
        Pattern pattern = Pattern.compile("([/\\:?'<>|]+)");
        Matcher matcher = pattern.matcher("ac!@#Aca?d_99ac!_dd");
        System.out.println(matcher.find());
      /*  String pattern = "([/\\:?'<>|]+)";
        System.out.println(regxMatcher(pattern,"_#?<"));*/
    }
}
